iT邦幫忙

2024 iThome 鐵人賽

DAY 14
0
Modern Web

API 101:從基礎認識到應用的全方位指南-Swagger/Postman系列 第 14

DAY 14. 如何使用 Postman 測試 API

  • 分享至 

  • xImage
  •  

Postman 是一款強大的 API 開發工具,廣泛應用於 API 的設計、測試、文件編寫和協作等各個環節。本文將從發文者的角度,詳細介紹如何使用 Postman 測試 API,主要涵蓋以下兩個部分:


使用 Postman 發送 API 請求

發送 API 請求是使用 Postman 進行 API 測試的核心功能。以下將通過具體步驟和範例,介紹如何在 Postman 中構建和發送不同類型的 API 請求。

1. 創建新的請求

  • 打開 Postman,確保你已經登錄到你的工作區。
  • 創建新請求:
    • 點擊左上角的 “New” 按鈕。
    • 選擇 “Request”,並為請求命名(例如:“Get User Data”),然後選擇要存放的 Collection(如尚未創建,可先創建一個新的 Collection)。
  • 配置請求方法和 URL:
    • 在新建的請求界面,選擇合適的 HTTP 方法(GET、POST、PUT、DELETE 等)。
    • 在 URL 輸入框中填入 API 端點,例如:https://api.example.com/users/1

2. 設置請求參數

不同的 API 請求可能需要不同的參數設置,包括查詢參數、標頭(Headers)、請求主體(Body)等。

範例一:GET 請求 - 獲取用戶資料

  • 方法:GET
  • URLhttps://api.example.com/users/1
  • 步驟
    1. 選擇 GET 方法。
    2. 輸入 URL。
    3. 點擊 “Send” 發送請求。

範例二:POST 請求 - 創建新用戶

  • 方法:POST
  • URLhttps://api.example.com/users
  • 步驟
    1. 選擇 POST 方法。
    2. 輸入 URL。
    3. 點擊 “Body” 標籤,選擇 raw 並設置格式為 JSON
    4. 在請求體中輸入 JSON 數據,例如:
      {
        "name": "Jane Doe",
        "email": "jane.doe@example.com"
      }
      
    5. 點擊 “Send” 發送請求。

3. 使用環境變數

環境變數可以幫助你在不同的測試環境中靈活切換 API 端點或其他參數,減少手動修改的工作量。

設置步驟

  1. 點擊右上角的 “齒輪圖標”,選擇 “Manage Environments”
  2. 創建一個新的環境(例如:“開發環境”),並添加變數:
    • base_url = https://dev.api.example.com
  3. 再創建一個環境(例如:“生產環境”),設置變數:
    • base_url = https://api.example.com
  4. 在請求的 URL 中使用變數,例如:{{base_url}}/users/1
  5. 選擇當前需要使用的環境,然後發送請求。

這樣,你只需切換環境,Postman 會自動替換 {{base_url}} 為相應的值,極大提升了測試的靈活性和效率。


分析與管理 API 回應

發送 API 請求後,Postman 會顯示來自服務器的回應。理解和分析這些回應對於確保 API 正常運行至關重要。

1. 查看回應狀態碼和時間

在回應區域的上方,你可以看到以下信息:

  • 狀態碼(Status Code):例如 200 OK404 Not Found500 Internal Server Error 等。這些狀態碼有助於快速判斷請求是否成功以及是否存在錯誤。
  • 回應時間(Response Time):顯示請求到回應所需的時間,有助於性能測試和優化。
  • 回應大小(Response Size):顯示回應數據的大小。

2. 查看回應數據

Postman 提供多種方式來查看回應數據,幫助你更好地理解 API 的行為。

  • Body
    • Pretty:格式化顯示 JSON、XML 等結構化數據,便於閱讀。
    • Raw:顯示原始的回應數據。
    • Preview:對 HTML 等可視化數據進行預覽。
  • Headers:顯示回應頭信息,例如內容類型(Content-Type)、服務器信息等。
  • Cookies:顯示與回應相關的 Cookie 信息。
  • Test Results:如果你設置了測試腳本,這裡會顯示測試的結果。

範例:分析 GET 請求的回應

假設你發送了一個 GET 請求,獲取用戶資料,回應如下:

{
  "id": 1,
  "name": "John Doe",
  "email": "john.doe@example.com"
}

分析步驟

  1. 狀態碼:確認是否為 200 OK,表示請求成功。
  2. Body - Pretty:檢查 JSON 結構是否正確,用戶資料是否完整。
  3. Headers:確認 Content-Type 是否為 application/json,確保數據格式正確。
  4. Test Results:如果設置了自動化測試腳本,查看測試是否通過。

3. 使用測試腳本自動化檢查回應

Postman 允許你撰寫 JavaScript 測試腳本,自動檢查回應是否符合預期,從而提高測試效率和準確性。

範例:檢查回應狀態碼和特定字段

  • 編寫測試腳本
    在請求界面,點擊 “Tests” 標籤,輸入以下腳本:
    // 檢查狀態碼是否為 200
    pm.test("Status code is 200", function () {
        pm.response.to.have.status(200);
    });
    
    // 檢查回應體中是否包含 name 和 email
    pm.test("Response has name and email", function () {
        var jsonData = pm.response.json();
        pm.expect(jsonData).to.have.property("name");
        pm.expect(jsonData).to.have.property("email");
    });
    
  • 發送請求,Postman 會自動執行這些測試,並在 “Test Results” 區域顯示結果。

這樣,你可以確保每次請求的回應都符合預期,及時發現和修正問題。

4. 管理和導出回應數據

Postman 允許你保存回應數據,方便後續分析和共享。

  • 保存回應
    在回應區域,點擊 “Save Response” 按鈕,將回應數據保存到指定的 Collection 或文件中。

  • 導出回應數據
    你可以將回應數據以 JSON、HTML 或其他格式導出,便於在其他工具中進行分析或報告。

  • 使用 Collection Runner
    如果你有一組請求需要批量運行,Postman 的 Collection Runner 可以自動運行所有請求,並生成詳細的回應報告,方便你查看和管理所有回應數據。



參考資料


上一篇
DAY 13. Postman 的基本架構
下一篇
DAY 15.使用 Postman 進行 API 測試自動化
系列文
API 101:從基礎認識到應用的全方位指南-Swagger/Postman30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言